/*[[ Name := Venezuelan Investment Group Author := Pedro Echenagucia Link := http://www.veninvgroup.com/ Lots := 1.00 Stop Loss := 30 Take Profit := 50 Trailing Stop := 0 ]]*/ Define: GAP(20),MaxTrades(3),Inverted(0),ReEntryGAP(5),tStop(0),tPips(0),StartHour(9),EndHour(14),MM(0),MaxLots(50),StartYear(2005); Define: Entry(0),ReEntry(0),Dir(0); Var: i(0),nLots(0),nTrades(0); If Yearbid+TrailingStop*Point Then ModifyOrder(OrderValue(i,VAL_TICKET),OrderValue(i,VAL_OPENPRICE),bid+TrailingStop*Point, OrderValue(i,VAL_TAKEPROFIT), Blue); }; } } } If tStop Then { For i=1 to TotalTrades { If OrderValue(1,VAL_SYMBOL)==Symbol Then { Switch OrderValue(i,VAL_TYPE) { Case OP_BUY: If OrderValue(i,VAL_STOPLOSS)=OrderValue(i,VAL_OPENPRICE)+tStop*Point Then ModifyOrder(OrderValue(i,VAL_TICKET),OrderValue(i,VAL_OPENPRICE),OrderValue(i,VAL_OPENPRICE)+tPips*Point, OrderValue(i,VAL_TAKEPROFIT), Blue); Case OP_SELL: If OrderValue(i,VAL_STOPLOSS)>OrderValue(i,VAL_OPENPRICE) And bid<=OrderValue(i,VAL_OPENPRICE)-tStop*Point Then ModifyOrder(OrderValue(i,VAL_TICKET),OrderValue(i,VAL_OPENPRICE),OrderValue(i,VAL_OPENPRICE)-tPips*Point, OrderValue(i,VAL_TAKEPROFIT), Red); }; } } } If HourEndHour Then { Entry=0; // ReEntry=0; Exit; } nTrades=0; If TotalTrades Then { For i=1 to TotalTrades { If OrderValue(i,VAL_SYMBOL)==Symbol Then nTrades++; } } If nTrades>=MaxTrades Then Exit; If MM Then { nLots = Floor(Equity/20000); If nLots < 1 Then nLots=1; If nLots > MaxLots Then nLots=MaxLots; } else { nLots=Lots; } If Entry Then { If Ask>=Entry+GAP*Point Then { SetOrder(OP_BUY,nLots,Ask,1,Ask-StopLoss*Point,Ask+TakeProfit*Point,Blue); ReEntry=Ask; Print("ReEntry ",ReEntry, " Time ",TimeToStr(CurTime)); Entry=0; Dir=1; Exit; } If Ask<=Entry-GAP*Point Then { SetOrder(OP_SELL,nLots,Bid,1,Bid+StopLoss*Point,Bid-TakeProfit*Point,Red); ReEntry=Ask; Print("ReEntry ",ReEntry, " Time ",TimeToStr(CurTime)); Entry=0; Dir=2; Exit; } } else { If nTrades==0 Then { Entry=Ask; Print("Entry ",Entry, " Time ",TimeToStr(CurTime)); ReEntry=0; } } If ReEntry Then { If Dir==1 Then { If Ask>=ReEntry+ReEntryGAP*Point Then { SetOrder(OP_BUY,nLots,Ask,1,Ask-StopLoss*Point,Ask+TakeProfit*Point,Blue); If nTrades+1